package com.ctshk.rpc.tour.dto;

import com.ctshk.rpc.tour.dto.cache.ScheduleInfoCacheDTO;
import com.ctshk.rpc.tour.dto.cache.TripScheduleItineraryDayDTO;
import com.ctshk.rpc.tour.dto.cache.TripScheduleItineraryDayResDTO;
import com.ctshk.rpc.tour.dto.cache.TripTouristTypeDTO;
import com.ctshk.rpc.tour.req.SelfFeeJson;
import com.ctshk.rpc.tour.req.TourThemeJson;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.List;

/**
 * @author lys
 * @create 2021-04-14
 */
@Data
@ApiModel(value = "TripDetailsDTO对象", description = "旅行团详情对象")
public class TripDetailsResDTO implements Serializable {

    @ApiModelProperty(value = "行程id")
    private Long tripId;

    @ApiModelProperty(value = "行程标题")
    private String title;

    @ApiModelProperty(value = "旅游组别主数据ID(一级分类码)")
    private String tourTypeCode;

    @ApiModelProperty(value = "媒体资源列表")
    private List<TripDetailsMediaDTO> mediaList;

    @ApiModelProperty(value = "封面图")
    private String cover;

    @ApiModelProperty(value = "行程副标题")
    private String subTitle;

    @ApiModelProperty(value = "默认展示价格")
    private BigDecimal price;

    @ApiModelProperty(value = "旅行团主题JSON")
    private List<TourThemeJson> tagList;

    @ApiModelProperty(value = "行程特色JSON")
    private List<String> hintList;

    @ApiModelProperty(value = "行程每日介绍")
    private List<TripScheduleItineraryDayResDTO> scenicList;

    @ApiModelProperty(value = "是否当季热卖")
    private Integer isHot;

    @ApiModelProperty(value = "团期日期、价格、状态列表")
    private List<ScheduleInfoCacheDTO> dateListDTOS;

    @ApiModelProperty(value = "顾客须知")
    private String customerRights;

    @ApiModelProperty(value = "团费包含")
    private String tourFeeInclude;

    @ApiModelProperty(value = "团费不包含")
    private String tourFeeExclude;

    @ApiModelProperty(value = "自费项目json")
    private List<SelfFeeJson> selfFeeJson;

    @ApiModelProperty(value = "自费备注")
    private String selfFeeRemark;

    @ApiModelProperty(value = "报名须知")
    private String signNotice;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "业务类型：1:出境游 2:入境游")
    private Integer businessType;

}
